home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / pastex / installhd < prev    next >
Text File  |  1994-06-10  |  23KB  |  997 lines

  1. ; $VER: PasTeX 1.1 (20.5.94)
  2. ; Script to install PasTeX from CD-ROM
  3.  
  4. (complete 0)
  5. (set old_level @user-level)
  6.  
  7.  
  8.  
  9. ;
  10. ; strings
  11. ;
  12.  
  13. (set #ask-installdir
  14. (cat "Please choose a directory, where PasTeX should be installed."
  15.      "(Note: I will create a directory 'TeX' in your directory.)"
  16. ))
  17.  
  18. (set #ask-installdir-help
  19. (cat "You have to choose a directory, where the software will be copied."
  20.      "This directory must exist, please create one, if necessary. "
  21.      "E.g. if you choose Work: I will install TeX into Work:TeX"
  22. ))
  23.  
  24.  
  25. (set #ask-instmask
  26. (cat "Which parts of the CD TeX installation should be installed"
  27.      "on your harddisk?"
  28. ))
  29.  
  30. (set #ask-instmask-help
  31. (cat "Choose which parts of the TeX installation you need.\n\n"
  32.      "PasTeX programs:\n  Main TeX programs (initex, virtex, ShowDVI, DVIprint, SpecialHost, flib)\n\n"
  33.      "TeX utilities:\n  Various usefull programs\n\n"
  34.      "TeX format files:\n  plain.fmt, lplain.fmt ...\n\n"
  35.      "TeX macros:\n  LaTeX, style files, ...\n\n"
  36.      "pk fonts:\n  Fonts for different resolutions/printer\n\n"
  37.      "Metafont programs:\n  programs to generate pk-fonts\n\n"
  38.      "Metafont font sources:\n  sources of the pk-files"
  39. ))
  40.  
  41. (set #copy-pt-progs
  42. (cat "Copy the core programs of PasTeX:"
  43. ))
  44.  
  45. (set #copy-tfm
  46. (cat "Copy TFM-font files:"
  47. ))
  48.  
  49. (set #copy-rexx
  50. (cat "Copy ARexx scripts:"
  51. ))
  52.  
  53. (set #copy-rexx-namestruc
  54. (cat "Copy ARexx script 'namestruc' to REXX:"
  55. ))
  56.  
  57. (set #copy-config
  58. (cat "Copy config-files:"
  59. ))
  60.  
  61. (set #ask-texprgmask
  62. (cat "Which version of IniTeX/VirTeX would you like to install?"
  63. ))
  64.  
  65. (set #ask-texprgmask-help @askchoice-help
  66. )
  67.  
  68. (set #copy-req-lib
  69. (cat "Copy req.library:"
  70. ))
  71.  
  72. (set #copy-iff-lib
  73. (cat "Copy iff.library:"
  74. ))
  75.  
  76. (set #help-req-lib
  77. (cat "ShowDVI needs the req.library for the file and color requester."
  78. ))
  79.  
  80. (set #help-iff-lib
  81. (cat "This library is needed for reading and writing IFF files."
  82. ))
  83.  
  84.  
  85. (set #copy-tex-pool
  86. (cat "Copy TeX.pool file:"
  87. ))
  88.  
  89. (set #copy-tex-norm-progs
  90. (cat "Copy IniTeX/Virtex (small/68000):"
  91. ))
  92.  
  93. (set #copy-tex-big-progs
  94. (cat "Copy IniTeX/Virtex (big/68000):\n"
  95.      "(You have to rename the programs)"
  96. ))
  97.  
  98. (set #copy-tex-20-progs
  99. (cat "Copy IniTeX/Virtex (small/68020):\n"
  100.      "(You have to rename the programs)"
  101. ))
  102.  
  103. (set #copy-tex-big-20-progs
  104. (cat "Copy IniTeX/Virtex (big/68020):\n"
  105.      "(You have to rename the programs)"
  106. ))
  107.  
  108. (set #ask-texutil
  109. (cat "Which TeX utilities do you want to install:"
  110. ))
  111.  
  112. (set #ask-texutil-help @askoptions-help
  113. )
  114.  
  115. (set #ask-formats
  116. (cat "Which TeX format files do you want to install:"
  117. ))
  118.  
  119. (set #ask-formats-help @askoptions-help
  120. )
  121.  
  122. (set #ask-macros
  123. (cat "Which TeX macros (additional to plainTeX and LaTeX) do you want to install:"
  124. ))
  125.  
  126. (set #ask-macros-help @askoptions-help
  127. )
  128.  
  129. (set #ask-resolutions
  130. (cat "Which TeX pk-fonts do you want to install:"
  131. ))
  132.  
  133. (set #ask-resolutions-help @askoptions-help
  134. )
  135.  
  136. (set #ask-preview
  137. (cat "What set of preview-fonts do you want to install:"
  138. ))
  139.  
  140. (set #ask-preview-help @askchoice-help
  141. )
  142.  
  143. (set #ask-180
  144. (cat "What set of 180x180dpi fonts do you want to install:"
  145. ))
  146.  
  147. (set #ask-180-help @askchoice-help
  148. )
  149.  
  150. (set #ask-300
  151. (cat "What set of 300x300dpi fonts do you want to install:"
  152. ))
  153.  
  154. (set #ask-300-help @askchoice-help
  155. )
  156.  
  157. (set #ask-360
  158. (cat "What set of 360x360dpi fonts do you want to install:"
  159. ))
  160.  
  161. (set #ask-360-help @askchoice-help
  162. )
  163.  
  164. (set #ask-600
  165. (cat "What set of 600x600dpi fonts do you want to install:"
  166. ))
  167.  
  168. (set #ask-600-help @askchoice-help
  169. )
  170.  
  171. (set #ask-pkfax
  172. (cat "What set of 204x196dpi fax-fonts do you want to install:"
  173. ))
  174.  
  175. (set #ask-pkfax-help @askchoice-help
  176. )
  177.  
  178. (set #ask-callmf
  179. (cat "How would you like to have the automatical font generation:"
  180. ))
  181.  
  182. (set #ask-callmf-help 
  183. (cat "The PasTeX DVI-drivers supports a possibility to automatical call Metafont for"
  184.      "missing fonts. The ENV: variable CALLMF decide how Metafont will be called.\n\n"
  185.      "If there is no ENV:CALLMF, no fontcreation will be done.\n\n"
  186.      "If CALLMF points to MF:rexx/MakeBatch.rexx, a script will be created with an"
  187.      "entry for each missing font. If you call the script, all fonts which are missed"
  188.      "will be created.\n\n"
  189.      "If CALLMF points to MF:rexx/MakeTeXFont.rexx, each missing font will be created"
  190.      "immediatly. But this can take some time."
  191. ))
  192.  
  193. (set #startup-prompt
  194. (cat "I have to add some commands to your S:User-Startup."
  195. ))
  196.  
  197. (set #startup-help
  198. (cat "I have to add some commands to your S:User-Startup.\n\n"
  199.      "PasTeX needs some assigns to work:\n"
  200.      "TeX:   root directory of the TeX installation.\n"
  201.      "MF:    root directory of Metafont.\n"
  202.      "PKVol: assignment to the pk-font directories of the\n"
  203.      "       CD-ROM. Needed for font-caching\n\n"
  204.      "Two path components are added too:\n"
  205.      "TeX:bin for the normal TeX programs/utilities\n"
  206.      "MF:bin  for the Metafont programs."
  207. ))
  208.  
  209. ;--------------------------------------------------------
  210.  
  211. ;
  212. ; copyfonts procedure
  213. ;
  214.  
  215. (procedure copyfonts
  216.   (makedir pkdestdir)
  217.   (set fntlst "(cmbx10|cmbx5|cmbx7|cmcsc10|cmex10|cmmi10|cmmi5|cmmi7|cmr10|cmr5|cmr7|cmsl10|cmss10|cmssbx10|cmssi10|cmsy10|cmsy5|cmsy7|cmti10|cmtt10)")
  218.  
  219.   (if (= pkcopyopt 1)
  220.    ( ; then
  221.      ; small subset
  222.      (set fntpat (cat fntlst ".#?"))
  223.    )
  224.    ( ; else
  225.      ; all fonts (or no fonts at all!)
  226.      (set fntpat "#?")
  227.    )
  228.   )
  229.      
  230.   (if (<> pkcopyopt 0)
  231.    ( ; then 
  232.      ; there are fonts to copy
  233.      (foreach pksourcedir pkpat 
  234.        (if (= @each-type 2)
  235.         ( ; then directory
  236.           (copyfiles (source  (tackon pksourcedir @each-name))
  237.                      (dest    (tackon pkdestdir @each-name))
  238.                      (pattern fntpat))
  239.         )
  240.        )
  241.      )
  242.    )
  243.   )
  244. )
  245.  
  246.  
  247.  
  248.  
  249. ;--------------------------------------------------------
  250. ;--------------------------------------------------------
  251. ;--------------------------------------------------------
  252.  
  253.  
  254.  
  255. (set sourcedir (pathonly @icon))
  256.  
  257. (set target (askdir (prompt #ask-installdir)
  258.             (help   #ask-installdir-help)
  259.             (default "Work:")
  260.         )
  261. )
  262.  
  263. (set @default-dest (tackon target "TeX"))
  264. (set texbindir  (tackon @default-dest "bin"))
  265. (set formatdir  (tackon @default-dest "formats"))
  266. (set macdir     (tackon @default-dest "macros"))
  267. (set pkdir      (tackon @default-dest "pk"))
  268. (set mfdir      (tackon @default-dest "mf"))
  269. (set mfbindir   (tackon mfdir         "bin"))
  270.  
  271. (makedir @default-dest (infos))
  272.  
  273.  
  274. ;
  275. ; ---------------------------------------------------------------------------
  276. ;
  277. ; Welche Pakete sollen installiert werden?
  278. ;
  279. ; ---------------------------------------------------------------------------
  280. ;
  281.  
  282. (if (>= @user-level 1)
  283.  (set instmask (askoptions (choices "PasTeX programs"
  284.                     "TeX utilities"
  285.                     "TeX format files"
  286.                     "TeX macros"
  287.                     "pk-fonts"
  288.                     "Metafont programs"
  289.                     "Metafont font sources"
  290.                )
  291.                (prompt #ask-instmask)
  292.                (help   #ask-instmask-help)
  293.                (default 31)
  294.            )
  295.  )
  296.  (set instmask 31)
  297. )
  298.  
  299.  
  300.  
  301. ;
  302. ; ---------------------------------------------------------------------------
  303. ;
  304. ; Nun fuer alle zu installierenden Pakete diverse Fragen stellen
  305. ;
  306. ; ---------------------------------------------------------------------------
  307. ;
  308.  
  309.  
  310.  
  311. ;------PasTeX prg install----------
  312.  
  313. (if (IN instmask 0)
  314.  ( ; then 
  315.    (if (>= @user-level 1)
  316.     ((set texprgmask (askoptions (choices "initex/virtex"
  317.                              "initex/virtex big-version"
  318.                             "initex/virtex 020-version"
  319.                             "initex/virtex big-020-version"
  320.                             )
  321.                            (prompt #ask-texprgmask)
  322.                            (help   #ask-texprgmask-help)
  323.                            (default 1)
  324.                )
  325.     ))
  326.     ((set texprgmask 1)
  327.    ))
  328.  )
  329.  ( ; else
  330.    (set texprgmask 0)
  331.  )
  332. )
  333.   
  334.  
  335.  
  336. ;------Utilities-------------------
  337. (if (IN instmask 1)
  338.  ( ; then
  339.    (user 2)
  340.    (set texutilmask (askoptions (prompt #ask-texutil)
  341.                         (help #ask-texutil-help)
  342.                         (choices     "bibtex"
  343.                              "bm2font"
  344.                              "c++2latex"
  345.                              "dvi2tty"
  346.                              "dvidvi"
  347.                              "dviLJ2p"
  348.                         "dvips"
  349.                         "dvips (68020 version)"
  350.                         "dvitype"
  351.                         "lacheck (LaTeX check)"
  352.                         "fig / fig2dev / TransFig"
  353.                         "makeindex"
  354.                         "pbmtopk / pktopbm"
  355.                         )
  356.                         (default 0)
  357.                 )
  358.    )
  359.    (user old_level)
  360.  )
  361.  ( ; else
  362.    (set texutilmask 0)
  363.  )
  364. )
  365.  
  366.  
  367. ;------TeX formats------------------
  368. (if (IN instmask 2)
  369.  ( ; then
  370.    (user 2)
  371.    (set formatmask (askoptions  (prompt #ask-formats)
  372.                         (help   #ask-formats-help)
  373.                         (choices "plain"
  374.                           "gplain  (german)"
  375.                           "lplain  (LaTeX)"
  376.                           "glplain (LaTeX german)"
  377.                           "latex2e (LaTeX2e english+german)"
  378.                         )
  379.                         (default 5)
  380.            )
  381.    )
  382.  
  383.   (if (IN formatmask 4)
  384.    (message "You have choosen the LaTeX2e format files.\n\n" 
  385.         "In order to use these files, you also have to install the LaTeX2e macros!"
  386.    )
  387.   )
  388.  
  389.    (user old_level)
  390.  )
  391.  ( ; else
  392.    (set formatmask 0)
  393.  )
  394. )
  395.  
  396.  
  397. ;------TeX macros------------------
  398. (if (IN instmask 3)
  399.  ( ; then
  400.    (user 2)
  401.  
  402.    (set macdef 0)
  403.    (if (IN formatmask 4)
  404.     (set macdef 1)
  405.    )
  406.  
  407.    (set macros (askoptions  (prompt #ask-macros)
  408.                     (help   #ask-macros-help)
  409.                     (choices     "all LaTeX2e macros"
  410.                     "a4 (old LaTeX)"
  411.                          "dinbrief"
  412.                          "epic"
  413.                     "eepic"
  414.                          "script"
  415.                          "subeqn"
  416.                          "supertab"
  417.                          "array"
  418.                          "docstrip"
  419.                          "ftnright"
  420.                          "multicol"
  421.                     "nfss"
  422.                     "theorem"
  423.                     "verbatim"
  424.                    )
  425.                    (default macdef)
  426.            )
  427.    )
  428.  
  429.   (if (IN macros 0)
  430.    (message "You have choosen the LaTeX2e macro files.\n\n" 
  431.         "In order to use these files, you have to change the TeX configuration."
  432.         "See the difference between TeX:config/TeX.cnf and TeX.cnf.latex2e.\n\n"
  433.         "You have to use the other TEXINPUTS line.\n\n"
  434.         "If you have done this, you can call LaTeX2e with:\n"
  435.         "virtex &latex2e\n\n\n"
  436.         "If you get problems with the TeX capacity, use bigvirtex."
  437.    )
  438.   )
  439.  
  440.    (user old_level)
  441.  
  442.  )
  443.  ( ; else
  444.    (set macros 0)
  445.  )
  446. )
  447.  
  448. ;------pk-fonts--------------------
  449. (if (IN instmask 4)
  450.  (
  451.    (user 2)
  452.    (set resomask (askoptions (prompt #ask-resolutions)
  453.                      (help   #ask-resolutions-help)
  454.                      (choices     "preview"
  455.                          "180x180 dpi (e.g. NEC P6 draft)"
  456.                          "300x300 dpi (e.g. HP DeskJet)"
  457.                     "360x360 dpi (e.g. NEC P6 high quality)"
  458.                     "600x600 dpi (e.g. LaserJet 4)"
  459.                     "204x196 dpi (FAX resolution)"
  460.                      )
  461.                      (default 1)
  462.              )
  463.    )
  464.    (user old_level)
  465.  
  466.    ; preview fonts
  467.    (if (IN resomask 0)
  468.     ( ; then
  469.       (set pkprev     (askchoice (prompt #ask-preview)
  470.                          (help   #ask-preview-help)
  471.                          (choices "none (use font caching)"
  472.                             "only a small subset (use font caching)"
  473.                            "all fonts (of this CD)"
  474.                          )
  475.                          (default 0)
  476.                   )
  477.       )
  478.     )
  479.    )
  480.    
  481.    ; 180x180
  482.    (if (IN resomask 1)
  483.     ( ; then
  484.       (set pk180    (askchoice (prompt #ask-180)
  485.                        (help   #ask-180-help)
  486.                         (choices "none (use font caching)"
  487.                             "only a small subset (use font caching)"
  488.                           "all fonts (of this CD)"
  489.                         )
  490.                         (default 0)
  491.                  )
  492.       )
  493.     )
  494.    )
  495.    
  496.    ; 300x300
  497.    (if (IN resomask 2)
  498.     ( ; then
  499.       (set pk300     (askchoice (prompt #ask-300)
  500.                         (help   #ask-300-help)
  501.                         (choices "none (use font caching)"
  502.                           "only a small subset (use font caching)"
  503.                           "all fonts (of this CD)"
  504.                         )
  505.                         (default 0)
  506.                  )
  507.       )
  508.     )
  509.    )
  510.    
  511.    ; 360x360
  512.    (if (IN resomask 3)
  513.     ( ; then
  514.       (set pk360     (askchoice (prompt #ask-360)
  515.                         (help   #ask-360-help)
  516.                         (choices "none (use font caching)"
  517.                           "only a small subset (use font caching)"
  518.                           "all fonts (of this CD)"
  519.                         )
  520.                         (default 0)
  521.                  )
  522.       )
  523.     )
  524.    )
  525.  
  526.    
  527.    ; 600x600
  528.    (if (IN resomask 4)
  529.     ( ; then
  530.       (set pk300     (askchoice (prompt #ask-600)
  531.                         (help   #ask-600-help)
  532.                         (choices "none (use font caching)"
  533.                           "only a small subset (use font caching)"
  534.                           "all fonts (of this CD)"
  535.                         )
  536.                         (default 0)
  537.                  )
  538.       )
  539.     )
  540.    )
  541.    
  542.    ; 204x196
  543.    (if (IN resomask 5)
  544.     ( ; then
  545.       (set pkfax     (askchoice (prompt #ask-pkfax)
  546.                         (help   #ask-pkfax-help)
  547.                         (choices "none (use font caching)"
  548.                           "only a small subset (use font caching)"
  549.                           "all fonts (of this CD)"
  550.                         )
  551.                         (default 0)
  552.                  )
  553.       )
  554.     )
  555.    )
  556.  )
  557. )
  558.  
  559. ;------mf progs--------------------
  560. (if (IN instmask 5)
  561.  ( ; then
  562.    (set callmf (askchoice (prompt  #ask-callmf)
  563.                           (help    #ask-callmf-help)
  564.                           (choices "no automatical font creation"
  565.                                    "create a batchfile for font creation"
  566.                                    "create missing fonts immediately"
  567.                           )
  568.                           (default 2)
  569.                )
  570.    )
  571.  )
  572. )
  573.  
  574. ;------mf fnt source---------------
  575.  
  576. ; hier gibt's nichts zu fragen
  577.  
  578.  
  579.  
  580. ;
  581. ; ---------------------------------------------------------------------------
  582. ;
  583. ; Nun die Pakete wirklich installieren.
  584. ; Hier nun keine User-Aktionen!
  585. ;
  586. ; ---------------------------------------------------------------------------
  587. ;
  588.  
  589.  
  590. ;------PasTeX prg install----------
  591. (if (IN instmask 0)
  592.  (
  593.   (set texbindir (tackon @default-dest "bin"))
  594.   (copyfiles (prompt #copy-pt-progs)
  595.              (source (tackon sourcedir "bin"))
  596.              (choices "ShowDVI" "DVIprint" "Flib" "SpecialHost" "PToFront")
  597.              (dest   texbindir)
  598.              (infos)
  599.   )
  600.   
  601.   (copyfiles (prompt #copy-tfm)
  602.              (source (tackon sourcedir "fonts"))
  603.              (dest   (tackon @default-dest "fonts"))
  604.              (all)
  605.   )
  606.   
  607.   (copyfiles (prompt #copy-rexx)
  608.              (source (tackon sourcedir "rexx"))
  609.              (dest   (tackon @default-dest "rexx"))
  610.              (all)
  611.   )
  612.   
  613.   (copyfiles (prompt  #copy-rexx-namestruc)
  614.              (source  (tackon sourcedir "rexx"))
  615.              (dest    "rexx:")
  616.              (choices "namestruc")
  617.   )
  618.   
  619.   (copyfiles (prompt #copy-config)
  620.              (source (tackon sourcedir "config"))
  621.              (dest   (tackon @default-dest "config"))
  622.              (all)
  623.   )
  624.   
  625.   (copylib (prompt #copy-req-lib)
  626.            (help   #help-req-lib)
  627.            (source (tackon (tackon sourcedir "libs") "req.library"))
  628.            (dest   "libs:")
  629.            (optional "nofail")
  630.            (confirm)
  631.   )
  632.   
  633.   (copylib (prompt #copy-iff-lib)
  634.            (help   #help-req-lib)
  635.            (source (tackon (tackon sourcedir "libs") "iff.library"))
  636.            (dest   "libs:")
  637.            (optional "nofail")
  638.            (confirm)
  639.   )
  640.   
  641.   (if (<> texprgmask 0)
  642.    (
  643.     (copyfiles (prompt  #copy-tex-pool)
  644.                (source  sourcedir)
  645.                (dest    @default-dest)
  646.                (choices "TeX.pool")
  647.     )
  648.    )
  649.   )
  650.  
  651.   (if (IN texprgmask 0)
  652.    (
  653.     (copyfiles (prompt #copy-tex-norm-progs)
  654.                (source (tackon sourcedir "bin"))
  655.                (choices "IniTeX" "VirTeX")
  656.                (dest   texbindir)
  657.                (infos)
  658.     )
  659.   ))
  660.    
  661.   (if (IN texprgmask 1)
  662.    (
  663.     (copyfiles (prompt #copy-tex-big-progs)
  664.                (source (tackon sourcedir "bin"))
  665.                (choices "BigIniTeX" "BigVirTeX")
  666.                (dest   texbindir)
  667.                (infos)
  668.                (optional)
  669.     )
  670.   ))
  671.    
  672.   (if (IN texprgmask 2)
  673.    (
  674.     (copyfiles (prompt #copy-tex-20-progs)
  675.                (source (tackon sourcedir "bin"))
  676.                (choices "IniTeX20" "VirTeX20")
  677.                (dest   texbindir)
  678.                (infos)
  679.                (optional)
  680.     )
  681.   ))
  682.    
  683.   (if (IN texprgmask 3)
  684.    (
  685.     (copyfiles (prompt #copy-tex-big-20-progs)
  686.                (source (tackon sourcedir "bin"))
  687.                (choices "BigIniTeX20" "BigVirTeX20")
  688.                (dest   texbindir)
  689.                (infos)
  690.                (optional)
  691.     )
  692.   ))
  693.    
  694.  )
  695. )
  696.  
  697.  
  698. (complete 4)
  699.  
  700. ;------Utilities-------------------
  701.  
  702. (set n 0)
  703. (set texutilpat "(%")
  704. (while (set texutil (select n "bibtex"
  705.                   "bm2font"
  706.                   "c++2latex"
  707.                   "dvitty"
  708.                   "dvidvi"
  709.                   "dviLJ2p"
  710.                   "dvips"
  711.                   "dvips20"
  712.                   "dvitype"
  713.                   "lacheck"
  714.                   "fig|fig2dev|transfig"
  715.                   "makeindex"
  716.                   "pbmtopk|pktopbm"
  717.                   ""
  718.              )
  719.        )
  720. (
  721.     (if (IN texutilmask n)
  722.     (
  723.     (set texutilpat (cat texutilpat "|" texutil))
  724.     ))
  725.     (set n (+ n 1))
  726. ))
  727.  
  728. (copyfiles (source (tackon sourcedir "bin"))
  729.        (dest texbindir)
  730.        (pattern (cat texutilpat ")")))
  731.  
  732. (if (OR (IN texutilmask 6) (IN texutilmask 7))
  733.  (
  734.   (copyfiles (source (tackon sourcedir "ps"))
  735.          (dest   (tackon @default-dest "ps"))
  736.          (all))
  737.  )
  738. )
  739.  
  740.   
  741.  
  742. (complete 7)
  743.  
  744.  
  745. ;------TeX formats------------------
  746. (if (<> formatmask 0) 
  747.  ( ; then
  748.    (set n 0)
  749.    (set formatpat "(%")
  750.    (while (set format  (select n "plain.fmt|plain.log"
  751.                      "gplain.fmt|gplain.log"
  752.                      "lplain.fmt|lplain.log"
  753.                      "glplain.fmt|glplain.log"
  754.                      "latex2e.fmt|latex2e.log"
  755.                      ""
  756.                )
  757.           )
  758.    (
  759.       (if (IN formatmask n)
  760.       (
  761.      (set formatpat (cat formatpat "|" format))
  762.       ))
  763.       (set n (+ n 1))
  764.    ))
  765.  
  766.    (makedir formatdir)
  767.  
  768.    (copyfiles (source  (tackon sourcedir "formats"))
  769.           (dest    formatdir)
  770.           (pattern (cat formatpat ")")))
  771.  )
  772. )
  773.  
  774.  
  775. (complete 10)
  776.  
  777.  
  778.  
  779. ;------TeX macros------------------
  780. (if (IN instmask 3)
  781.  (
  782.   (set lamacdir (tackon macdir "latex"))
  783.   (set mimacdir (tackon macdir "misc"))
  784.   
  785.   (makedir macdir (infos))
  786.   (makedir lamacdir (infos))
  787.   (makedir mimacdir (infos))
  788.   (makedir (tackon macdir "distribs"))
  789.  
  790.   ; sollen die LaTeX2e Makrs installiert werden?
  791.   (if (IN macros 0)
  792.    (
  793.     (makedir (tackon macdir "latex2e") (infos))
  794.     (makedir (tackon macdir "latex2e/inputs") (infos))
  795.    )
  796.   )
  797.   
  798.  
  799.   ; erstmal die normalen Macros kopieren, die immer kopiert werden
  800.   (copyfiles (source   (tackon sourcedir "macros"))
  801.              (dest     macdir)
  802.              (pattern  "#?.(tex|sty|one|two|hyphen)"))
  803.              
  804.   (copyfiles (source   (tackon (tackon sourcedir "macros") "misc"))
  805.              (dest     mimacdir)
  806.              (all))
  807.              
  808.   (copyfiles (source   (tackon (tackon sourcedir "macros") "hyphenation"))
  809.              (dest     (tackon macdir "hyphenation"))
  810.              (all))
  811.              
  812.   (copyfiles (source   (tackon (tackon (tackon sourcedir "macros") "latex") "general"))
  813.              (dest     (tackon lamacdir "general"))
  814.              (all))
  815.              
  816.   (copyfiles (source   (tackon (tackon (tackon sourcedir "macros") "latex") "sty"))
  817.              (dest     (tackon lamacdir "sty"))
  818.              (all))
  819.              
  820.  
  821.   (set n 0)
  822.   (while (set macrodir (select n "latex2e/inputs"
  823.                  "a4"
  824.                        "dinbrief"
  825.                        "epic"
  826.                      "eepic"
  827.                        "script"
  828.                        "subeqn"
  829.                        "supertab"
  830.                        "distribs/array"
  831.                        "distribs/doc"
  832.                        "distribs/ftnright"
  833.                        "distribs/multicol"
  834.                        "distribs/nfss"
  835.                        "distribs/theorem"
  836.                        "distribs/verbatim"
  837.                        ""
  838.                )
  839.          )
  840.   (
  841.       (if (IN macros n)
  842.        (
  843.          (copyfiles (source (tackon (tackon sourcedir "macros") macrodir))
  844.                   (dest   (tackon macdir macrodir)
  845.                     (all))
  846.          )
  847.        )
  848.       )
  849.       (set n (+ n 1))
  850.   ))
  851.  
  852.  
  853.  )
  854. )
  855.  
  856. (complete 30)
  857.  
  858.  
  859. ;------pk-fonts--------------------
  860. (if (IN instmask 4)
  861.  ( ; then
  862.    (set pkdir (tackon @default-dest "pk"))
  863.    (makedir pkdir)
  864.    
  865.    ; preview fonts
  866.    (if (IN resomask 0)
  867.     ( ; then
  868.       (set pkdestdir   pkdir)
  869.       (set pksourcedir (tackon sourcedir "pk"))
  870.       (set pkcopyopt   pkprev)
  871.       (set pkpat       "#[0-9]")
  872.       (copyfonts)
  873.     )
  874.    )
  875.    ; 180 fonts
  876.    (if (IN resomask 1)
  877.     ( ; then
  878.       (set pkdestdir (tackon pkdir "180x180"))
  879.       (set pksourcedir (tackon sourcedir "pk/180x180"))
  880.       (set pkcopyopt   pk180)
  881.       (set pkpat       "#[0-9]")
  882.       (copyfonts)
  883.     )
  884.    )
  885.    ; 300 fonts
  886.    (if (IN resomask 2)
  887.     ( ; then
  888.       (set pkdestdir (tackon pkdir "300x300"))
  889.       (set pksourcedir (tackon sourcedir "pk/300x300"))
  890.       (set pkcopyopt   pk300)
  891.       (set pkpat       "#[0-9]")
  892.       (copyfonts)
  893.     )
  894.    )
  895.    ; 360 fonts
  896.    (if (IN resomask 3)
  897.     ( ; then
  898.       (set pkdestdir (tackon pkdir "360x360"))
  899.       (set pksourcedir (tackon sourcedir "pk/360x360"))
  900.       (set pkcopyopt   pk360)
  901.       (set pkpat       "#[0-9]")
  902.       (copyfonts)
  903.     )
  904.    )
  905.    ; 600 fonts
  906.    (if (IN resomask 2)
  907.     ( ; then
  908.       (set pkdestdir (tackon pkdir "600x600"))
  909.       (set pksourcedir (tackon sourcedir "pk/600x600"))
  910.       (set pkcopyopt   pk600)
  911.       (set pkpat       "#[0-9]")
  912.       (copyfonts)
  913.     )
  914.    )
  915.    ; 204x196 fonts
  916.    (if (IN resomask 3)
  917.     ( ; then
  918.       (set pkdestdir (tackon pkdir "204x196"))
  919.       (set pksourcedir (tackon sourcedir "pk/204x196"))
  920.       (set pkcopyopt   pkfax)
  921.       (set pkpat       "#[0-9]")
  922.       (copyfonts)
  923.     )
  924.    )
  925.  )
  926. )
  927.  
  928. (complete 80)
  929.  
  930.  
  931. ;------mf progs--------------------
  932. (if (IN instmask 5)
  933.  ( ; then
  934.    (makedir mfdir (infos))
  935.    (copyfiles (source (tackon sourcedir "mf"))
  936.               (dest   mfdir)
  937.               (pattern "(bases|bin|config|doc|rexx)"))
  938.    (if (= callmf 1)
  939.     ( ; then batch
  940.       (copyfiles (source (tackon sourcedir "mf/ENV"))
  941.                  (dest   "ENV:")
  942.                  (choices "CALLMF-batch")
  943.                  (newname "CALLMF"))
  944.       (copyfiles (source (tackon sourcedir "mf/ENV"))
  945.                  (dest   "ENVARC:")
  946.                  (choices "CALLMF-batch")
  947.                  (newname "CALLMF"))
  948.     )
  949.    )
  950.    (if (= callmf 2)
  951.     ( ; then immediately
  952.       (copyfiles (source (tackon sourcedir "mf/ENV"))
  953.                  (dest   "ENV:")
  954.                  (choices "CALLMF"))
  955.       (copyfiles (source (tackon sourcedir "mf/ENV"))
  956.                  (dest   "ENVARC:")
  957.                  (choices "CALLMF"))
  958.    )
  959.   )
  960.  )
  961. )
  962.  
  963. (complete 85)
  964.  
  965.  
  966. ;------mf fnt source---------------
  967. (if (IN instmask 6)
  968.  ( ; then
  969.    (makedir mfdir (infos))
  970.    (copyfiles (source (tackon sourcedir "mf/inputs"))
  971.               (dest   (tackon mfdir "inputs"))
  972.               (all))
  973.  )
  974. )
  975.  
  976.  
  977. (complete 99)
  978.  
  979. (startup @app-name (prompt  #startup-prompt)
  980.                    (help    #startup-help)
  981.                    (command (cat "assign TeX:   " @default-dest "\n"))
  982.                    (command (cat "assign MF:    " mfdir "\n"))
  983.                    (command (cat "assign PKVol: " (tackon sourcedir "pk") " " 
  984.                                                   (tackon sourcedir "pk/180x180") " "
  985.                                                   (tackon sourcedir "pk/300x300") " "
  986.                                                   (tackon sourcedir "pk/360x360") " "
  987.                                                   (tackon sourcedir "pk/600x600") " "
  988.                                                   (tackon sourcedir "pk/204x196") "\n"))
  989.                    (command "path TeX:bin MF:bin add")
  990. )
  991.  
  992. (complete 100)
  993.  
  994.  
  995. (exit)
  996.  
  997.